package com.chushouya.product.service.admin;


import com.general.framework.core.schema.PageResult;
import com.chushouya.product.dto.admin.brand.BrandDetailDTO;
import com.chushouya.product.dto.admin.brand.BrandListDTO;
import com.chushouya.product.dto.admin.brand.BrandQuery;

/**
 * 品牌业务
 */
public interface BrandService {

    /**
     * 分页查询品牌
     * @param query 参数
     * @return 分页对象
     */
    PageResult<BrandListDTO> selectBrandPageResult(BrandQuery query);

    /**
     * 根据ID查询品牌
     * @param brandId 品牌Id
     * @return 品牌详情
     */
    BrandDetailDTO getBrandDetail(Long brandId);

    /**
     * 新增品牌
     * @param brand 品牌
     * @return Id
     */
    Long addBrand(BrandDetailDTO brand);

    /**
     * 修改品牌
     * @param brand 品牌
     */
    Long editBrand(BrandDetailDTO brand);

    /**
     * 删除品牌
     * @param brandId 品牌Id
     */
    void removeBrand(Long brandId);

    /**
     * 修改品牌状态
     * @param brandId 品牌ID
     * @param status 状态
     */
    Long editBrandStatus(Long brandId, Integer status);

    /**
     * 查询品牌名称
     * @param brandId 品牌ID
     */
    String getBrandName(Long brandId);
}
